/**
 * fileName:  Resources.java
 * author:  Lei
 * Company:  Cloudland Studio
 * Createdate:  2014-3-1 下午4:21:07
 *
 * All rights Reserved, Designed By cloudland Copyright(C) 2010-2020
 *   
 * Modification  History:
 *     Date           Author        Version        
 * -------------------------------------------
 * 2014-3-1          Lei            1.0        
 *
 * Why & What is modified:
 * 1.0: 文件创建
 */
package org.cloudland.commercial.uphold.handler;

 /**
 * <pre> 
 * 资源信息接口
 * </pre>
 * @ClassName  Resources
 * @author  Lei
 * @version  %I%, %G%
 * @see  
 * @since   JDK1.6
 *
 */
public interface Resources {
	
	/**
	 * <pre>
	 * 获取资源标示符
	 * </pre>
	 *
	 * @return 资源标示符   
	 */
	String id();
	
	/**
	 * <pre>
	 * 获取资源描述名称
	 * </pre>
	 *
	 * @return 资源名称  
	 */
	String getName();
	
	/**
	 * <pre>
	 * 设置资源描述名称
	 * </pre>
	 *
	 * @param name 资源名称  
	 */
	void setName(String name);
	
	/**
	 * <pre>
	 * 获取资源提供的服务地址
	 * </pre>
	 *
	 * @return 服务地址  
	 */
	String getAction();
	
	/**
	 * <pre>
	 * 设置资源提供的服务地址
	 * </pre>
	 *
	 * @param url 服务地址  
	 */
	void setAction(String url);
	
	/**
	 * <pre>
	 * 获取资源的先后顺序
	 * </pre>
	 *
	 * @return 资源顺序  
	 */
	Integer sequence();
	
	/**
	 * <pre>
	 * 设置资源的先后顺序
	 * </pre>
	 *
	 * @param sequence 资源顺序  
	 */
	void setSequence(Integer sequence);
	
	/**
	 * <pre>
	 * 获取资源的类型
	 * </pre>
	 *
	 * @return 资源类型
	 */
	String getType();
	
	/**
	 * <pre>
	 * 设置资源的类型
	 * </pre>
	 *
	 * @param type 资源类型
	 */
	void setType(String type);
	
	/**
	 * <pre>
	 * 获取资源下属所有资源信息
	 * </pre>
	 *
	 * @return  下属资源
	 */
	Resources[] getChild();

}
